quick overview of object pool design pattern